The process of fabricating integrated circuits typically involves a functional design step, followed by a physical design step. During the functional design step, a design concept is described using a hardware description language and is then converted into a netlist, which specifies the electronic components and the connections between the components. The physical design step specifies the placement of the electrical components or elements on the chip and routing of the connections between the electrical components thereby implementing the netlist. The physical design process generates the physical design data, which are synonymously called layout data, layout, or target layout.
The target layout defines a set of binary patterns or objects, which are also called “features” or “geometric features”. Usually the objects are represented as a polygon or collection of polygons in the layout data in order to facilitate the specification of the objects.
Each object can be a part of an electronic component such as a gate of a transistor or a connection between components. Each polygon object has vertices and edges joining the vertices. Each vertex is usually defined by its coordinates in a Cartesian x-y coordinate system. In a typical very-large scale integrated (VLSI) circuit, most edges are parallel to the x or y axis.
Often the physical design data are stored and transmitted in a machine-readable format such as GDSII format, OASIS™ format, or in a database such as OpenAccess database technology or Milkyway™ design database. See, for example, OpenAccess: The Standard API for Rapid EDA Tool Integration, 2003 by Si2, Inc; Milkyway Foundation Database for Nanometer Design, Synopsys, Inc. 2003.
In these formats or databases, the layouts are often described hierarchically. This has the advantage of reducing file sizes and improving efficiency for certain changes, since some patterns are placed multiple times in the layout. Repeatedly describing the same structure in detail can be avoided.
In the layout hierarchy, a cell is a subset of the layout pattern that can be referenced as a whole object. Thus, cells can be included in the layout by reference. Inclusions by reference can further be nested.
Often, the hierarchy of the layout resembles a tree. The leaves of a tree are attached to its branches. Branches are attached to larger branches. The hierarchy of branches continues until the trunk of the tree reaches its roots. Leaf cells of a circuit are cells that do not include any cells by reference. A leaf cell comprises a set of objects, which are usually polygons. A child cell is included in its parent cell. A root cell it is not included in any other. A layout can have multiple root cells resembling a forest with multiple trees.
Multiple instances of a cell can be described by a structure reference or an array reference. A structure reference places an instance (a copy) of a cell at a particular (x,y)-offset within a parent cell. Each instance has transformation information, which can often include translation, magnification, reflection, and/or rotation. An array reference describes multiple instances of a cell that are placed on a set of locations that form a grid or array. The array is defined by: 1) a number of rows; 2) a number of columns, 3) row and column spacings, 4) (x,y) offset of an instance; and 5) a set of magnifications, reflections, and rotations that are common to all cells in the array.
If a layout does not have hierarchy, it is called flat. A layout can be flat as per design. Sometimes a hierarchical layout can be flattened. Flattening a layout means removing its hierarchical organization by replacing each cell reference by the set of polygons contained in the cell that is referenced.
Semiconductor device manufacturing comprises many steps of patterning layers according to the layout data. A layer is either the substrate of the semiconductor wafer or a film deposited on the wafer. At some steps, a pattern is etched into a layer. At some other steps, ions are implanted, usually in a pattern, into the layer. Generally, patterning comprises: lithography, and etch or implant.
The prevalent form of lithography is optical projection lithography. This involves first making a mask or reticle that embodies the pattern to be projected onto the wafer. An image of the mask's pattern is then optically projected onto a photoresist film coated on the wafer. This selectively exposes photoresist. The latent image is then developed, thereby making a stencil on the wafer.
Presently, the most common optical lithography projectors are stepper-scanners. These instruments expose a slit shaped region, which is often 26 millimeters (mm)×8 mm on the wafer. The wafer is scanned under the slit by a motorized stage under interferometer control. The mask is scanned in synchronization with the wafer but at a higher speed to account for the reduction of the projector (typically 4×). One scan typically exposes a 26 mm×33 mm image field. Step-and-repeat lithography projectors expose the wafer a field at a time. A common field size here is 22 mm×22 mm. In either case, many exposure fields are needed to cover the wafer.
Other forms of lithography include: mask-less optical projection lithography where the mask is replaced by a spatial light modulator. The spatial modulator is typically an array of micro-machined mirrors that are illuminated and imaged onto the wafer. The spatial light modulator is driven by the lithography data. Direct electron-beam writing lithography; electron projection lithography, and imprint lithography are other forms of lithography.
Field, image field, or exposure field synonymously refer to a region on the wafer and/or a corresponding, optically conjugate region on the mask, if used, where the image on the mask is projected onto the wafer at one static exposure or in one scanning motion. Position in the exposure field is the position of a point on the wafer with respect to coordinate axes fixed on the projection lens, if used, at the beginning of the scanning or stationary exposure by which the point on the wafer is exposed. Lithography data refers to data that are submitted to or otherwise used to specify the mask making process or data that are sent to the spatial modulator of a mask-less lithography instrument.
All patterning processes, however faithful, distort the image to some extent. The pattern that is etched into a layer of the wafer is not an exact scaled replica of the mask or spatial light modulator pattern. The target layout describes the pattern that the designer desires to render on the wafer to form the integrated circuit. It is usually different than the pattern that is actually rendered on the integrated circuit, and is therefore usually very different than the pattern submitted to the mask making process. Thus, the target layout, the lithography or mask data, and the pattern resulting on the wafer are distinct patterns.
Modern semiconductor lithography processes often print features that are smaller than the exposure wavelength. In this regime, which is called the low-k1 regime, the field and wave nature of light is prevalent, and the finite aperture of the projection lens acts as a low-pass filter of spatial frequencies in the image. Thus, it may be difficult for the projection lens to reproduce the high spatial frequency components required to reproduce the sharp edges or corners in polygon objects for example. Also, light entering a mask opening from one object may impact another shape in close proximity, leading to a complex interaction of the electric fields of adjacent objects. Thus, the final shapes that are produced on the wafer will often have rounded corners and may bulge towards adjacent objects in ways that can impact the process yield. This resulting image distortion, called optical proximity effect, is responsible for the most significant distortion that arises in the transfer of the mask pattern onto the wafer.
Optical Proximity Correction (OPC) is the process of changing, or pre-distorting, the mask data so that the pattern that is etched in the wafer is a closer replica of the target layout. The goal of OPC is to counter the distortions caused by the physical patterning process (see A. K-T Wong, Resolution enhancement techniques in optical lithography, SPIE Press, Vol. TT47, Bellingham, Wash., 2001; H. J. Levinson, Principles of Lithography, SPIE Press, Bellingham, Wash., 2001). In effect, the objects or polygons of the lithograph data are modifications from those specified by the target layout in an effort to improve the reproduction of the critical geometry. This is often accomplished by moving object edges and by adding additional objects to the layout.
Different techniques are used to simulate the transformation between the mask pattern and the pattern that is formed in the photo resist. The process for generating the OPC for a given object or mask is typically an iterative process involving moving or adding to the objects, performing a fast simulation to determine if the new objects result in a better resist pattern. In model-based OPC, various process effects are simulated. OPC is a numerically intensive calculation that transforms the target layout into mask data, or more generally, lithography data.
Most prior art OPC algorithms assume that the patterning process is invariant of the location in the imaging field. One approach applies OPC to one representative cell among many instances of the same cell. The same corrections are applied, or copied, to all instances of the cell. This approach ignores position dependent nature of the patterning distortions, however. In reality, the distortion depends on the location in the imaging field because lens aberrations, lens flare, and pupil-illumination have small but perceptible variations across the imaging field. See Mark van der Kerkof, et al, “Full optical column characterization of DUV lithographic projection tools,” SPIE Proc. Vol. 5377, p. 1960-1970, SPIE, Bellingham Wash., 2004).
U.S. patent application Ser. No. 10/861,170, filed Jun. 4, 2004, incorporated herein by this reference in its entirety, describes a method by which corrections can be made to the mask data to counter the distortions that depend on the position in the imaging field. Correcting mask data in a position dependent manner can render cells that would otherwise be identical, different. This approach usually applies a different correction to each instance of a repeating cell.